package DynamicProgrammingPackage;

import javax.swing.tree.TreeNode;

public class robIII {

    /*public int rob(TreeNode root) {

    }*/
    // 1.dp是一个一维的长度为2的数组, dp[0]表示偷当前节点所得到的金额最大值, dp[1]表示不偷当前节点所得到的金额最大值
    public int[] robTree(TreeNode root){
       /* if(root == null) return new int[]{0,0};
        //后序遍历
        int[] leftDp = robTree(root.left);
        int[] rightDp = robTree(root.right);

        // 定义偷当前节点的金额最大值
        // 因为偷当前节点, 那他的孩子就不能偷了
        int value1 = root.val + leftDp[1] + rightDp[1];

        // 定义不偷当前节点的金额最大值
        int value2 = Math.max(leftDp[0],leftDp[1]) + Math.max(rightDp[0],rightDp[1]);
        return new int[]{value1,value2};*/
        return null;
    }
}
